// 封装axios请求模板
import axios from "axios"
//引入jsonbigint
import jsonBig from "json-bigint"


// axios.create 方法：复制一个 axios
const request = axios.create({
  baseURL: "http://ttapi.research.itcast.cn/" // 基础路径
})

// 请求拦截器
request.interceptors.request.use(
  function (config) {
    return config
  },
  function (error) {
    return Promise.reject(error)
  }
)

// 响应拦截器
request.interceptors.response.use(
  function (response) {
    return response
  },
  function (error) {
    return Promise.reject(error);
  }
)
//解决后端返回数据超出 JS 安全整数范围问题
request.defaults.transformResponse = [function (data) {
  try {
    return jsonBig.parse(data);
  } catch {
    return {}
  }
}]

export default request
